import tkinter as tk
import random
import threading
import time
import sys  # 用于退出程序
def show_warm_tip():
    # 创建窗口
    window = tk.Tk()
    # 获取屏幕宽高
    screen_width = window.winfo_screenwidth()
    screen_height = window.winfo_screenheight()
    # 随机窗口位置（确保窗口完全显示在屏幕内）
    window_width = 600
    window_height = 60
    x = random.randrange(0, screen_width - window_width)
    y = random.randrange(0, screen_height - window_height)
    # 设置窗口标题和大小位置
    window.title('温馨提示')
    window.geometry(f"{window_width}x{window_height}+{x}+{y}")
    # 提示文字列表（已添加新内容）
    tips = [
        '每次见你都一眼入心', '梦到你是很开心的一件事', 
        '说完早安好像才能早起成功',
        'ZJW是个非常具有魔力的人', 'ZJW是世界上最帅的男孩子', '再忙也要好好休息',
        '你笑起来真的非常迷人','备赛这段时间真的辛苦了微微心疼你',
        '你都好久没有正经跟我聊过天了,但 体谅你',
        '惩罚你比赛那天尽量不要紧张，相信你可以的',
        '今天要记得开心哦','加油加油，给你打call', 'Passion!!!',
        '斯人若彩虹遇上方知有',  '初见乍欢，久处亦怦然', '潮汐是地球的呼吸频率',
        '喜欢慢悠悠的日子和真诚的人', '明知不可为而为之是我最大的诚意',
        '喜欢你是真的,对你的感觉也是真的',
        '我巴不得每天给你发很多信',
        '可你要知道只有你才能让我这样',
        '心里装着一个满分的人，所以看谁都差点意思', '自由的风在森林里捉迷藏',
        '有些时候光是遇见就已经很完美了', '很高兴认识你',
        '真不公平太阳明明照到两个人，却只有我脸红',
        '如果有一天再不会见面，祝你早安晚安午安',
    ]
    tip = random.choice(tips)
    # 多样的背景颜色
    bg_colors = [
        'lightpink', 'skyblue', 'lightgreen', 'lavender',
        'lightyellow', 'plum', 'coral', 'bisque', 'aquamarine',
        'mistyrose', 'honeydew', 'lavenderblush', 'oldlace'
    ]
    bg = random.choice(bg_colors)
    # 创建标签并显示文字
    tk.Label(
        window,
        text=tip,
        bg=bg,
        font=('微软雅黑', 20),
        width=80,
        height=3
    ).pack()
    # 窗口置顶显示
    window.attributes('-topmost', True)
    # 绑定空格键事件，触发时退出所有窗口并终止程序
    def on_space(event):
        window.destroy()
        for t in threads:
            if t.is_alive():
                # 这里通过关闭窗口的方式终止线程（tkinter窗口关闭后线程内的mainloop会结束）
                pass
        sys.exit()  # 退出程序
    window.bind('&lt;space&gt;', on_space)
    window.mainloop()
# 创建线程列表
threads = []
# 窗口数量（根据屏幕大小可调整）
for i in range(250):
    t = threading.Thread(target=show_warm_tip)
    threads.append(t)
    time.sleep(0.009)  # 快速弹出窗口
    threads[i].start()
